package com.kunbo.cn.controller.uflo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;

import com.kunbo.cn.entity.system.user.User;
import com.kunbo.cn.entity.uflo.entity.Tips;
import com.kunbo.cn.service.uflo.TipsService;
import com.kunbo.cn.util.json.JsonResult;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 *code is far away from bug with the animal protecting
 * ┏┓　     ┏┓
 *┏┛┻━━━┛┻┓
 *┃　　　　　 ┃ 　
 *┃　　　━　   ┃
 *┃　┳┛　┗┳　  ┃
 *┃　　　　　　  ┃
 *┃　　　┻　　   ┃
 *┃　　　　　　  ┃
 *┗━┓　　　  ┏━┛
 *　  ┃　　　┃神兽保佑
 *　  ┃　　　┃代码无BUG！
 *　  ┃　　　┗━━━┓
 *　  ┃　　　　　　┣┓
 *　  ┃　　　　　 ┏┛
 *　  ┗┓┓┏━┳┓┏┛
 *　　 ┃┫┫ ┃┫┫
 *　　 ┗┻┛ ┗┻┛
 *　　
 *   @description : Tips 控制器
 *   ---------------------------------
 *      @author liuyu
 *   @since 2018-03-20
 */
@RestController
@RequestMapping("/tips")
public class TipsController {
    private final Logger logger = LoggerFactory.getLogger(TipsController.class);

    @Autowired
    public TipsService tipsService;
    
    /**
     * 打开设置别名页面
     * @param uuid
     * @return
     */
    @GetMapping("toAddTips")
    public ModelAndView toAddTips(String uuid) {
    	ModelAndView mv = new ModelAndView();
    	mv.setViewName("activiti/tips/setTips");
    	return mv;
    }
    /**
     * 设置任务别名
     * @param tName 别名
     * @param procInsId 流程实例id
     * @param request
     * @return
     */
    @PostMapping("addTips")
    public JsonResult addTips(String tName,String procInsId,HttpServletRequest request) {
    	JsonResult result = new JsonResult();
    	User user = (User) request.getSession().getAttribute("user");
    	Tips t = new Tips();
    	t.setProcInsId(procInsId);
    	t.setTName(tName);
    	t.setTUser(user.getId());
    	Tips y = tipsService.insert(t);
    	if(null!=y) {
    		result.setStatus("0");
    		result.setMsg("别名指定成功");
    	}else {
    		result.setStatus("1");
    		result.setMsg("别名指定失败");
    	}
    	return result;
    }
    
    @PostMapping("findTipById")
    public JsonResult findTipById(String pid) {
    	JsonResult result = new JsonResult();
		Tips tips = tipsService.selectByProcInsId(pid);
		result.setObj(tips);
		result.setStatus("0");
    	return result;
    }

    
}